uni 您所在的位置:网站首页 home indicator uni

uni

2022-12-22 03:10| 来源: 网络整理| 查看: 265

记录一下如何在用uni-app开发h5时适配全面屏

最近用uni-app开发h5应用时,需要适配全面屏,所以查阅相关资料,将修改涉及到的一些注意点分享一下。

# 适用场景

页面带有操作按钮,例如「确定」、「提交」、「删除」之类,操作按钮需要置底显示的情况。 如下图:

可以看到在页面底部的 home indicator 横条与操作按钮重叠了。

# 解决方法

主要方法就是需要判断当前是否是全面屏然后为底部操作栏增加相应的样式。

那么如何判断是否是全面屏呢?

我们可以在uni-app项目的公用函数里添加一段js来判断

function() { let isFullScreen = false const rate = window.screen.height / window.screen.width; let limit = window.screen.height == window.screen.availHeight ? 1.8 : 1.65; // 临界判断值 // window.screen.height为屏幕高度 // window.screen.availHeight 为浏览器 可用高度 if (rate > limit) { isFullScreen = true; } return isFullScreen }

在需要判断全面屏的页面引入工具函数之后使用即可: 例如 util.js

... 发布 ... import helper from '@/common/js/util.js' export default { data() { return { isFullScreen: helper.checkFullScreen() } } }

当然我们也可以在app初始化的时候就进行判断然后存入全局变量,例如 localstorage、vuex(刷新之后就不行了)等等,这里不再展开了。

示例效果:

# 相关属性说明window.screen.availWidth:声明了显示浏览器的屏幕的可用宽度,以像素计。在 Windows 这样的操作系统中,这个可用高度不包括分配给半永久特性(如屏幕底部的任务栏)的垂直空间。window.screen.availHeight:声明了显示浏览器的屏幕的可用高度,以像素计。在 Windows 这样的操作系统中,这个可用高度不包括分配给半永久特性(如屏幕底部的任务栏)的垂直空间。window.screen.width:声明了显示浏览器的屏幕的宽度,以像素计。window.screen.height:声明了显示浏览器的屏幕的高度,以像素计。# 参考资料availWidth 属性 availHeight 属性


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有